/*
 * @Author: chenhaoran
 * @Date: 2024-07-07 23:08:44
 * @LastEditors: chenhaoran
 * @LastEditTime: 2024-07-26 17:18:26
 */
import {
  defineStore
} from "pinia";
export const useSidebarStore = defineStore('sidebar', {
  state: () => {
    return {
      isCollapse: false,
      breadcrumb: []
    }
  },
  getters: {
    // 方法一，接收一个可选参数 state
    // myCount(state) {
    //   console.log('调用了') // 页面中使用了三次，这里只会执行一次，然后缓存起来了
    //   return state.count + 1
    // },
    // 方法二，不传参数，使用 this
    // 但是必须指定函数返回值的类型，否则类型推导不出来(ts文件)
    /* myCount(): number {
      return this.count + 1
    } */
    sidebarWidth(state) {
      return state.isCollapse ? '64px' : '200px'
    },
  },
  actions: {
    handleCollapse() {
      this.isCollapse = !this.isCollapse;
    },
    setBreadcrumb(arr) {
      this.breadcrumb = arr
      // localStorage.setItem('breadcrumb', JSON.stringify(arr))
    }
  }
})